This disclosure relates generally to computer user interfaces and in particular to natural language-based computer interfaces.
As the availability of computing power has gone up, while the size of computing devices and associated costs have gone down, the range of uses for computing devices has increased. One area of recent growth has been virtual assistants, which are now available on many smartphones as well as through stand-alone devices. Virtual assistants interact with users to assist them in completing various tasks. For example, rather than a user opening a web browser, typing a request for the weather in the user's hometown, selecting a search result, and scrolling through the resulting webpage to determine that day's forecast, the user might just ask the assistant “what's the weather going to be like tomorrow in San Francisco?” with the intent that the virtual assistant will provide a summary of the weather forecast in response.
However, existing computer systems often struggle to correctly interpret natural language input. Where a human might rely on context and “common sense” to interpret a statement, existing computer systems often misinterpret requests, or fail to recognize them as requests at all. This leads to wasted time and frustration, as the user has to reframe the request in a more explicit way. It may even lead to the user to giving up on the natural language interface altogether and reverting to other forms of input. Improving natural language processing may improve the speed, accuracy, and usability of computer systems. This may also enable expanded and improved functionality for computerized virtual assistants, as well as other computing systems with which humans interact.